import request from '@/utils/request'

// 查询基金基本信息列表
export function listFundBase(query) {
  return request({
    url: '/base/fundBase/list',
    method: 'get',
    params: query
  })
}

// 查询基金基本信息详细
export function getFundBase(id) {
  return request({
    url: '/base/fundBase/' + id,
    method: 'get'
  })
}

// 查询基金基首页指标
export function getIndicator(id) {
  return request({
    url: '/base/fundBase/indicator/' + id,
    method: 'get'
  })
}

// 查询基金基列表
export function getFundList(query) {
  return request({
    url: '/base/fundBase/findList',
    method: 'get',
    params: query
  })
}

// 查询基金基首页指标
export function getCharts(fundId, type, data) {
  return request({
    url: `/base/fundBase/industryChart/${type}/${fundId}`,
    method: 'post',
    data: data
  })
}

// 查询基金项目列表
export function getDealBaseListByFundId(query) {
  return request({
    url: `/base/fundBase/getByFundId`,
    method: 'get',
    params: query
  })
}

// 查询基金首页项目列表
export function getDealBaseInfoByFund(query) {
  return request({
    url: `/base/fundBase/getDealBaseInfoByFund`,
    method: 'get',
    params: query
  })
}

// 根据基金ID查询基金名称
export function getFundName(id) {
  return request({
    url: '/base/fundBase/getName/' + id,
    method: 'get'
  })
    .then(result => result.code === 200 && result.data)
}

// 保存基金基本信息
export function saveFundBase(data) {
  return request({
    url: '/base/fundBase/save',
    method: 'post',
    data: data
  })
}

// 删除基金基本信息
export function delFundBase(id) {
  return request({
    url: '/base/fundBase/' + id,
    method: 'delete'
  })
}

// 导出基金基本信息
export function exportFundBase(query) {
  return request({
    url: '/base/fundBase/export',
    method: 'get',
    params: query
  })
}

// 查询基金(仅ID和名称)
export function findFund(query) {
  return request({
    url: '/base/fundBase/findFund',
    method: 'get',
    params: query
  })
}

// 查询基金及母基金(仅ID和名称)
export function findFundFof(query) {
  return request({
    url: '/base/fundBase/findFundFof',
    method: 'get',
    params: query
  })
}

export function findFundFofLimit(data) {
  return request({
    url: '/base/fundBase/findFundFofLimit',
    method: 'post',
    data: data
  })
}

// 查询投资组合
export function findInvestPortfolio(query) {
  return request({
    url: '/base/fundBase/findInvestPortfolio',
    method: 'get',
    params: query
  })
}

// 查询投资组合汇总值
export function findInvestSummaryValues(fundId) {
  return request({
    url: '/base/fundBase/findInvestSummaryValues/' + fundId,
    method: 'get'
  })
}

// 根据基金名称查询基金
export function fundInfoByFundName(fundName) {
  return request({
    url: '/base/fundBase/fundInfoByFundName/' + fundName,
    method: 'get'
  })
}

// 根据基金全称查询基金
export function fundInfoByFundFullName(fundFullName) {
  return request({
    url: '/base/fundBase/fundInfoByFundFullName/' + fundFullName,
    method: 'get'
  })
}

// 根据公司名称模糊匹配公司列表
export function fundListByName(fundFullName) {
  return request({
    url: '/base/fundBase/fundListByName?fundFullName=' + fundFullName,
    method: 'get'
  })
}

// 获取基金关键信息
export function getKeyInformation(fundId) {
  return request({
    url: '/base/fundBase/getKeyInformation/' + fundId,
    method: 'get'
  })
}

// 根据天眼查ID或者公司名称获取公司工商详情
export function fundDetailsByName(query) {
  return request({
    url: '/base/fundBase/fundDetailsByName',
    method: 'get',
    params: query
  })
}

// 获取基金架构图数据
export function getStructureChart(query) {
  return request({
    url: '/base/fundBase/getStructureChart',
    method: 'get',
    params: query
  })
}

// 最新(基金成立时间)基金
export function findLatestFundFound(query) {
  return request({
    url: '/base/fundBase/findLatestFundFound',
    method: 'get',
    params: query
  })
}

// 获取基金出资信息
export function getFundInvestInfo(query) {
  return request({
    url: '/base/fundBase/getFundInvestInfo',
    method: 'get',
    params: query
  })
}

// 获取基金出资信息
export function getFundInvestInfoSum(query) {
  return request({
    url: '/base/fundBase/getFundInvestInfo/getSum',
    method: 'get',
    params: query
  })
}

// 获取基金出资信息
export function getFundInvestInfoSpv(query) {
  return request({
    url: '/base/fundBase/getFundInvestInfoSpv',
    method: 'get',
    params: query
  })
}

// 根据基金ID获取基金阶段
export function getByFundId(fundId) {
  return request({
    url: '/phase/fundPhase/getByFundId/' + fundId,
    method: 'get'
  })
}

// 获取全部出资人信息
export function getAllInvestor() {
  return request({
    url: '/base/fundBase/getAllInvestor',
    method: 'get'
  })
}

export function findSpvFund(query) {
  return request({
    url: '/base/fundBase/findSpvFund',
    method: 'get',
    params: query
  })
}

// spv
export function getSpvTitleNumbers(fundId) {
  return request({
    url: '/deal/projectInvestmentSituationSpv/getSpvTitleNumbers/' + fundId,
    method: 'get'
  })
}

// 获取项目投资架构图数据
export function investChartData(dealId) {
  return request({
    url: '/base/fundBase/investChartData/' + dealId,
    method: 'get'
  })
}

// 获取基金投资架构图数据
export function fundInvestChartData(fundId) {
  return request({
    url: '/base/fundBase/fundInvestChartData/' + fundId,
    method: 'get'
  })
}

// 根据基金ID查询数据类型  spv or fund
export function fundDataType(id) {
  return request({
    url: '/base/fundBase/fundDataType/' + id,
    method: 'get'
  })
}

// 获取基金信息子详细信息根据fundId
export function getFundBaseFundByFundId(fundId) {
  return request({
    url: '/fund/fundBaseFund/getByFundId/' + fundId,
    method: 'get'
  })
}

// 获取母基金列表
export function getFundBaseFofList(query) {
  return request({
    url: '/base/fundBase/getFofList',
    method: 'get',
    params: query
  })
}

// 母基金基金概览基本信息
export function getFundBaseFofToOverview(fundId) {
  return request({
    url: '/base/fundBase/getFundBaseFofToOverview/' + fundId,
    method: 'get'
  })
}

// 母基金 投资信息 子基金信息
export function fofSubFundInfo(fundId) {
  return request({
    url: '/base/fundBase/fofSubFundInfo/' + fundId,
    method: 'get'
  })
}

// 母基金 瓯子信息 直投项目信息
export function fofDirectInvestmentInfo(fundId) {
  return request({
    url: '/base/fundBase/fofDirectInvestmentInfo/' + fundId,
    method: 'get'
  })
}

// 母基金基金概况 echarts图
export function fofOverviewChart(fundId) {
  return request({
    url: '/base/fundBase/fofOverviewChart/' + fundId,
    method: 'get'
  })
}

// 出资人列表
export function fofInvestorList(fundId) {
  return request({
    url: '/base/fundBase/fofInvestorList/' + fundId,
    method: 'get'
  })
}

// 分析表白-投资数据看板-基金指标
export function fundIndicatorsDetails() {
  return request({
    url: '/base/fundBase/fundIndicatorsDetails',
    method: 'get'
  })
}

// 分析表白-投资数据看板-基金业绩情况列表
export function fundPerformanceList(query) {
  return request({
    url: '/base/fundBase/fundPerformanceList',
    method: 'get',
    params: query
  })
}
